// 1.引入axios对象
import request from "@/utils/request";

// 2.使用枚举进行统一接口API管理
enum Api{
  // 2.1获取spu的列表信息根据分页
  getSpuListApi = '/admin/product',
  // 2.2添加SPU的api
  saveSpuListApi = '/admin/product/saveSpuInfo',
  // 2.3删除SPU的api
  deleteSpuListApi='/admin/product/deleteSpu',
  // 2.4更新SPU的API
  updateSpuListApi = '/admin/product/updateSpuInfo',
  // 2.5获取品牌列表数据
  getTradmarkListApi = '/admin/product/baseTrademark/getTrademarkList',
  // 2.6获取销售属性列表
  getBaseSaleAttrListApi = '/admin/product/baseSaleAttrList',
  // 2.7根据spuId获取对应的图片列表
  getSpuImageListApi = '/admin/product/spuImageList',
  // 2.8根据spuId获取咦添加上的销售属性和值
  getSpuSaleAttrListApi = '/admin/product/spuSaleAttrList',
}
// 3.接口函数
// 3.1请求spu列表函数
/**
 * 
 * @param page 当前页码
 * @param limit   展示条数
 * @param category3Id   三级导航栏id
 * @returns 
 */
export const reqGetSpuListData = (page:number,limit:number,category3Id:number) => {
  return request.get(Api.getSpuListApi+`/${page}/${limit}?category3Id=${category3Id}`)
}

// 3.2请求品牌列表数据
export const reqGetSpuAttrData = () =>request.get( Api.getTradmarkListApi)
// 3.2请求销售属性列表数据
export const reqGetBaseSaleAttrListData = () => {
  return request.get(Api.getBaseSaleAttrListApi)
}

// 3.3增加spu
export const reqGetSaveSpuData = (spuInfo) => {
  return request.post(Api.saveSpuListApi,spuInfo)
}

//3.4删除spu
export const DeleteSpuData = (id) => request.delete(Api.deleteSpuListApi + `/${id}`)

//3.5获取待编辑的spuInfo中的图片列表
export const reqGetSpuImageListData = (spuId:number) => {
  return request.get(Api.getSpuImageListApi+`/${spuId}`)
}
// 3.6 获取待编辑的spuInfo中的销售属性及值
export const reqGetSpuSaleAttrListData = (spuId:number) => {
  return request.get(Api.getSpuSaleAttrListApi+`/${spuId}`)
}

// 3.7修改更新数据
export const updataSpuAllData = (spuInfo) => {
  return request.post(Api.updateSpuListApi,spuInfo)
}